package com.gxa.mapper.zhy;

import com.gxa.pojo.Role;
import com.gxa.pojo.Role_Permission;
import com.gxa.pojo.zhy.Paging;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * Created with IntelliJ IDEA.
 * User: 赵贺益
 * Date: 2021/12/06 10:57
 * Description:
 * Version: V1.0
 */

public interface RoleAuthorizationMapper {
    /**
     * 获取到角色的数量
     * @return
     */
    Integer querytotalSize();
    /**
     * 根据当前页码数和每页显示的数量查询所有的角色以及相关信息
     * @param param1
     * @param param2
     * @return
     */
    List<Object> queryAllRoles(Integer param1, Integer param2);
    /**
     * 根据角色id(role_id)删除角色
     * @param role_id
     * @return
     */
    int deleteRoleByRole_id(Integer role_id);
    /**
     * 判断该角色是否已经存在（添加角色时）
     */
    int selectRole_nameExists(String role_name);
    /**
     * 进行添加角色
     */
    int addRole(String role_name, String role_describe);
    /**
     * 根据角色id请求显示其对应的所有的权限
     * @param role_id
     * @return
     */
    List<Role_Permission> queryAllRolesByRole_id(Integer role_id);
    /**
     * 修改角色信息（名字，描述）
     * @param role
     * @return
     */
    int updateRolesInformationbyRoleId(Role role);
    /**
     * 先根据角色id删除对应的权限
     */
    int deletePermissionByRoleId(Integer integer);
    /**
     * 先根据角色id添加对应的权限
     */
    int addPermissionByRoleId(Integer role_id, Integer integer);

    /**
     * 模糊搜索到的数据的条数
     * @param message
     * @return
     */
    Integer querytotalSizes(@Param("message") String message);
    /**
     * 模糊搜索回显数据
     * @param param1
     * param2
     * @param message
     * @return
     */
    List<Role> queryAllRolesBYMessage(@Param("param1") Integer param1, @Param("param2") Integer param2, @Param("message") String message);
}
